/**
 * 
 */
package ch.baeni.jee.util;

import java.io.Serializable;
import javax.faces.application.FacesMessage;
import javax.faces.application.FacesMessage.Severity;
import javax.faces.context.FacesContext;

/**
 * @author Benjamin
 *
 */
public class MessageUtils implements Serializable {

	/**
	 * 
	 */
	private static final long serialVersionUID = -3939062864531459055L;

	/**
	 * Erzeugt eine Info-Meldung
	 * @param message Meldung zum anzeigen
	 */
	public void sendInfoMessage(String message) {
		FacesMessage facesMessage = createMessage(FacesMessage.SEVERITY_INFO, message);
		addMessage(facesMessage);
	}

	/**
	 * Erzeugt eine Warn-Meldung
	 * @param message Warnung zum anzeigen
	 */
	public void sendWarnMessage(String message) {
		FacesMessage facesMessage = createMessage(FacesMessage.SEVERITY_WARN, message);
		addMessage(facesMessage);
	}

	/**
	 * Erzeugt eine Fehler-Meldung
	 * @param message Fehlermeldung zum anzeigen
	 */
	public void sendErrorMessage(String message) {
		FacesMessage facesMessage = createMessage(FacesMessage.SEVERITY_ERROR, message);
		addMessage(facesMessage);
	}

	private FacesMessage createMessage(Severity severity, String message) {
		return new FacesMessage(severity, message, "");
	}

	private void addMessage(FacesMessage facesMessage) {
		FacesContext context = FacesContext.getCurrentInstance();
		context.addMessage(null, facesMessage);
	}
}
